package cc.aiee.wxpay.core.pojo.dto.score;

import java.io.Serializable;
import java.util.List;

import cc.aiee.wxpay.core.pojo.dto.score.notify.WxPayScoreNotifyCollection;
import cc.aiee.wxpay.model.score.complete.WxPayPostPayment;
import cc.aiee.wxpay.model.score.create.WxPayLocation;
import cc.aiee.wxpay.model.score.create.WxPayPostDiscount;
import cc.aiee.wxpay.model.score.create.WxPayRiskFund;
import cc.aiee.wxpay.model.score.create.WxPayTimeRange;
import lombok.Data;

@Data
public class WxPayScoreCompleteDTO implements Serializable{

	private static final long serialVersionUID = 1L;
	
	private String appid;
	private String mchid;
	private String out_order_no;
	private String service_id;
	private String service_introduction;
	/**
	 * 表示当前单据状态。
	 * 
	 * <pre>
	1、CREATED：商户已创建服务订单
	2、DOING：服务订单进行中
	3、DONE：服务订单完成
	4、REVOKED：商户取消服务订单
	5、EXPIRED：服务订单已失效，"商户已创建服务订单"状态超过30天未变动，则订单失效
	示例值：CREATED
	 * 
	 * </pre>
	 */
	private String state;
	/**
	 * <pre>
	 * 对服务订单"进行中"状态的附加说明
	USER_CONFIRM：用户确认
	MCH_COMPLETE：商户完结
	示例值：MCH_COMPLETE
	 * </pre>
	 */
	private String state_description;
	private Integer total_amount;
	
	private List<WxPayPostPayment> post_payments;
	
	private List<WxPayPostDiscount> post_discounts;
	
	private WxPayRiskFund risk_fund;
	private WxPayTimeRange time_range;
	
	private WxPayLocation location;
	
	private String order_id;
	/**
	 * 是否需要收款 true：微信支付分代收款 false：无需微信支付分代收款
	 */
	private Boolean need_collection;
	
	private WxPayScoreNotifyCollection collection;

}
